Total Complexity | 1 |
Total Lines | 15 |
Duplicated Lines | 0 % |
Changes | 0 |
1 | import {IObserver} from '../Observer/Observer'; |
||
16 | |||
17 | export default class ChangeLanguageSetup { |
||
18 | protected setupObserver: IObserver<ILanguageSetup>; |
||
19 | protected manager: Manager; |
||
20 | |||
21 | constructor(setupObserver: IObserver<ILanguageSetup>, manager: Manager) { |
||
22 | this.setupObserver = setupObserver; |
||
23 | this.manager = manager; |
||
24 | } |
||
25 | |||
26 | async interact(request: IRequest, response: IResponse): Promise<void> { |
||
27 | const languageCode: string = request.languageCode; |
||
28 | const translator: Translator = await this.manager.getTranslator(languageCode); |
||
29 | |||
30 | this.setupObserver.value = {languageCode: languageCode, translator: translator}; |
||
31 | } |
||
32 | } |